package com.damie.web.controller;


import com.damie.common.commonutils.R;
import com.damie.common.dao.Site;
import com.damie.common.dto.SiteDto;
import com.damie.common.jwtuilts.JwtUtil;
import com.damie.common.paramer.SiteParamer;
import com.damie.web.service.SiteService;
import io.jsonwebtoken.Claims;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author ls
 * @since 2021-01-18
 */
@RestController
@RequestMapping("/site")
@Api(value="站点",tags={"站点管理"})
public class SiteController {

    @Autowired
    private SiteService siteService;

    /**
     * 增加站点请求
     * @param siteDto
     * @return
     */
    @ApiOperation("新增站点")
    @PostMapping("/addSite")
    public R addSite(@RequestBody SiteDto siteDto,HttpServletRequest httpServletRequest){
//        网关:http://localhost/site/site/findAll
//        请求头
//        {
//            "Content-Type": "application/x-www-form-urlencoded",
//                "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2MTI4MDQxMzQsInVzZXJJZCI6IjEzNTE0OTc5MDE2NDk0NTMwNTgifQ.ZP0ClC9qoFwu-UlstsKOul9kX_uZm5UuNRWRDalyqlY"
//        }
//        {
//            "siteName": "花卉园站点",
//                "siteTel": "18856794463",
//                "siteCity": "重庆",
//                "siteDistrict": "渝北区",
//                "siteData": "https://msyoss.oss-cn-beijing.aliyuncs.com/%E5%93%92%E5%92%A9/2021/01/20/971852e8-0c9f-418e-a37e-87c0ceac9927.jpg",
//                "siteType": 1
//        }
        SiteParamer siteParamer = new SiteParamer();
        BeanUtils.copyProperties(siteDto,siteParamer);
        int i = siteService.addSite(siteParamer,httpServletRequest);
        return R.ok().data("增加操作",i).message("新增站点成功");
    }

    /**
     * 修改请求
     * @param siteDto
     * @return
     */
    @ApiOperation("修改站点")
    @PostMapping("/updSite")
    public R updSite(@RequestBody SiteDto siteDto){
//        {
//            "siteId": "1353520773316988930",
//                "siteName": "花卉园站点1",
//                "updateTime": ""
//        }
        SiteParamer siteParamer = new SiteParamer();
        BeanUtils.copyProperties(siteDto,siteParamer);
        siteService.updSite(siteParamer);
        return R.ok().message("修改成功");
    }

    /**
     * 查询站点操作
     * @param siteDto
     * @return
     */
    @ApiOperation("查询站点")
    @GetMapping("/findAll")
    public R findAll(SiteDto siteDto){
        SiteParamer siteParamer = new SiteParamer();
        BeanUtils.copyProperties(siteDto,siteParamer);
        List<Site> all = siteService.findAll(siteParamer);
        return R.ok().message("查询成功").data("all",all);
    }

    /**
     * 站点下线请求
     * @param siteDto
     * @return
     */
//    @ApiOperation("修改订单状态,逻辑删除站点")
//    @PostMapping("/delete")
//    public R delete(SiteDto siteDto){
////        {
////            "siteId": "1351441352888131586"
////        }
//        SiteParamer siteParamer = new SiteParamer();
//        BeanUtils.copyProperties(siteDto,siteParamer);
//        siteService.delete(siteParamer);
//        return R.ok().message("站点下线成功");
//    }
}

